package com.net.oil.shop.contract;

import com.net.oil.base.IBaseModel;
import com.net.oil.shop.bean.ShopDetailBean;

/**
 * 作者：lch
 * 时间：2018/4/3:10:01
 * 邮箱：245850413@qq.com
 * 说明：
 */

public interface ShopDetailContract {
    interface Model extends IBaseModel{

        /**
         * 根据id，获取商家详细信息
         * @param id    id
         */
        void getShopDetail(int id);

        /**
         * 预约保养
         * @param bid   商家id
         * @param time  预约时间
         * @param userCarId     爱车id
         */
        void reserveOrder(int bid, String time, int userCarId);
    }

    interface View {

        /**
         * 获取商家详情成功
         * @param shopDetailBean    商家详情数据
         */
        void getShopDetailSuccess(ShopDetailBean shopDetailBean);

        /**
         * 获取商家详情失败
         */
        void getShopDetailFailed();

        /**
         * 预约成功
         */
        void reserveOrderSuccess();

        /**
         * 预约失败
         */
        void reserveOrderFailed();
    }

    interface Presenter {

        /**
         * 根据id，获取商家详细信息
         * @param id    id
         */
        void getShopDetail(int id);

        /**
         * 获取商家详情成功
         * @param shopDetailBean    商家详情数据
         */
        void getShopDetailSuccess(ShopDetailBean shopDetailBean);

        /**
         * 获取商家详情失败
         */
        void getShopDetailFailed();

        /**
         * 预约保养
         * @param bid   商家id
         * @param time  预约时间
         * @param userCarId     爱车id
         */
        void reserveOrder(int bid, String time, int userCarId);

        /**
         * 预约成功
         */
        void reserveOrderSuccess();

        /**
         * 预约失败
         */
        void reserveOrderFailed();

    }
}
